package com.city.domain.party;

import javax.persistence.*;
import java.util.Objects;

/**
 * @deprecation: 干部出国申请
 * @dmail: 398521613@qq.com
 * @author: L-H
 * @date: 2018-07-18 13:14
 */
@Entity
@Table(name = "party_fabroad", schema = "city", catalog = "")
public class PartyFabroad {
    private int id;//主键
    private int userId;//用户id
    private String name;//姓名
    private String sex;//性别
    private String healthy;//健康状态
    private String company;//所在单位
    private String post;//职务
    private String level;//级别
    private String politicalOutlook;//政治面貌
    private String destination;//出国目的地
    private String fromStart;//出国起始时间
    private String fromEnd;//出国结束时间
    private String domesticTell;//国内通讯
    private String abroadTell;//国外通讯
    private String fundingChannel;//经费渠道
    private String method;//出国方式
    private String remarks;//备注
    private String time;//申请时间
    private String updateTime;
    private int abdStatus;  //出国状态 有默认值

    public int getAbdStatus() {
        return abdStatus;
    }

    public void setAbdStatus(int abdStatus) {
        this.abdStatus = abdStatus;
    }

    @Id
    @Column(name = "id")
    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    @Basic
    @Column(name = "user_id")
    public int getUserId() {
        return userId;
    }

    public void setUserId(int userId) {
        this.userId = userId;
    }

    @Basic
    @Column(name = "name")
    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    @Basic
    @Column(name = "sex")
    public String getSex() {
        return sex;
    }

    public void setSex(String sex) {
        this.sex = sex;
    }

    @Basic
    @Column(name = "healthy")
    public String getHealthy() {
        return healthy;
    }

    public void setHealthy(String healthy) {
        this.healthy = healthy;
    }

    @Basic
    @Column(name = "company")
    public String getCompany() {
        return company;
    }

    public void setCompany(String company) {
        this.company = company;
    }

    @Basic
    @Column(name = "post")
    public String getPost() {
        return post;
    }

    public void setPost(String post) {
        this.post = post;
    }

    @Basic
    @Column(name = "level")
    public String getLevel() {
        return level;
    }

    public void setLevel(String level) {
        this.level = level;
    }

    @Basic
    @Column(name = "political_outlook")
    public String getPoliticalOutlook() {
        return politicalOutlook;
    }

    public void setPoliticalOutlook(String politicalOutlook) {
        this.politicalOutlook = politicalOutlook;
    }

    @Basic
    @Column(name = "destination")
    public String getDestination() {
        return destination;
    }

    public void setDestination(String destination) {
        this.destination = destination;
    }

    @Basic
    @Column(name = "from_start")
    public String getFromStart() {
        return fromStart;
    }

    public void setFromStart(String fromStart) {
        this.fromStart = fromStart;
    }

    @Basic
    @Column(name = "from_end")
    public String getFromEnd() {
        return fromEnd;
    }

    public void setFromEnd(String fromEnd) {
        this.fromEnd = fromEnd;
    }

    @Basic
    @Column(name = "domestic_tell")
    public String getDomesticTell() {
        return domesticTell;
    }

    public void setDomesticTell(String domesticTell) {
        this.domesticTell = domesticTell;
    }

    @Basic
    @Column(name = "abroad_tell")
    public String getAbroadTell() {
        return abroadTell;
    }

    public void setAbroadTell(String abroadTell) {
        this.abroadTell = abroadTell;
    }

    @Basic
    @Column(name = "funding_channel")
    public String getFundingChannel() {
        return fundingChannel;
    }

    public void setFundingChannel(String fundingChannel) {
        this.fundingChannel = fundingChannel;
    }

    @Basic
    @Column(name = "method")
    public String getMethod() {
        return method;
    }

    public void setMethod(String method) {
        this.method = method;
    }

    @Basic
    @Column(name = "remarks")
    public String getRemarks() {
        return remarks;
    }

    public void setRemarks(String remarks) {
        this.remarks = remarks;
    }

    @Basic
    @Column(name = "time")
    public String getTime() {
        return time;
    }

    public void setTime(String time) {
        this.time = time;
    }

    @Basic
    @Column(name = "update_time")
    public String getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(String updateTime) {
        this.updateTime = updateTime;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        PartyFabroad that = (PartyFabroad) o;
        return id == that.id &&
                userId == that.userId &&
                Objects.equals(name, that.name) &&
                Objects.equals(sex, that.sex) &&
                Objects.equals(healthy, that.healthy) &&
                Objects.equals(company, that.company) &&
                Objects.equals(post, that.post) &&
                Objects.equals(level, that.level) &&
                Objects.equals(politicalOutlook, that.politicalOutlook) &&
                Objects.equals(destination, that.destination) &&
                Objects.equals(fromStart, that.fromStart) &&
                Objects.equals(fromEnd, that.fromEnd) &&
                Objects.equals(domesticTell, that.domesticTell) &&
                Objects.equals(abroadTell, that.abroadTell) &&
                Objects.equals(fundingChannel, that.fundingChannel) &&
                Objects.equals(method, that.method) &&
                Objects.equals(remarks, that.remarks) &&
                Objects.equals(time, that.time) &&
                Objects.equals(updateTime, that.updateTime);
    }

    @Override
    public int hashCode() {

        return Objects.hash(id, userId, name, sex, healthy, company, post, level, politicalOutlook, destination, fromStart, fromEnd, domesticTell, abroadTell, fundingChannel, method, remarks, time, updateTime);
    }
}
